All of the material in this patent application is subject to copyright protection under the copyright laws of the United States and of other countries. As of the first effective filing date of the present application, this material is protected as unpublished material. However, permission to copy this material is hereby granted to the extent that the copyright owner has no objection to the facsimile reproduction by anyone of the patent documentation or patent disclosure, as it appears in the United States Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
Not Applicable
1. Field of the Invention
This invention generally relates to the field of computer simulation, and more particularly to real-time modeling and based upon model parameters the results in real-time.
2. Description of the Related Art
Simulation of products or processes using a computer is well known. The products or processes being simulated may be very complex, expensive and involve a long time to build. Simulating how the product or process will perform and behave allows for minimizing time and money while helping to ensure an optimum solution. In addition certain attributes can be xe2x80x9cacceleratedxe2x80x9d such as fail rates and assembly tolerances. Process may be very fast (e.g., nuclear reactions), slow (e.g., rate for oxidization), or dangerous (e.g., fire), hence simulating allows for an understanding of the final result in a reasonable amount of time. Additionally simulation as it reduces analysis time results in lowered labor cost, which is increasingly a major cost component in product or process designs.
Normal Simulation
Referring to FIG. 1, there is shown a flow diagram 100, which describes the prior art of a manual simulation technique. The flow is entered 102 when the need for a product or process is recognized 104. An obvious question is: why not just build it or try it and see what happens? As noted above, the reasons for simulation over cut-and-try designs are well known. Cost, time, safety, and developing an optimum product are but a few reasons. Therefore an empirical model is developed 106. The set of equations are based on a set of assumptions and usually are always being tuned and refined. Once the model is selected and programmed a simulation is performed 108. It is noted that in some cased the simulation is very simple and the computer that is used is a PC. While in other cases such as weather prediction the simulation is very complicated and the computer used may be a main frame or the latest array processor such as the IBM Power Parallel Series machine. In any case, once the simulation is completed the results are presented 110. The results may be as simple as a single number, say the time an airplane has to run out of fuel, or a very complicated xe2x80x9canswerxe2x80x9d such as the weather across the nation over a 24-hour period. Once the simulation is completed there is typically additional time required to present the simulation results in a meaningful way 112. Once the results are studied, they are typically compared 114 to what was expected or desired. If the results are considered to be xe2x80x9ccorrectxe2x80x9d the simulation is considered to be complete and the flow is exited 118. If the simulation is not deemed to be correct 114 the model and or the parameters are adjusted and an additional simulation run is performed 116. The intended change and magnitude of the changes to the model and its parameters are usually accomplished by someone skilled in the art of simulation and particularly of what is being simulated. This type of simulation flow 100 although useful is not without its shortcomings. One shortcoming is the need to visualizing results in real-time. Nevertheless the results as compared to the different parameters and the interaction thereof is sometimes difficult to visualize. If a given parameter is changed, what will happen? The dynamics of creative thinking, which is usually xe2x80x9creal-timexe2x80x9d, is effected if the time to compare the results of the simulation with what is expected is too long. Accordingly, a need exits for real-time simulation and the display of the results, and adjustment to the modeling in such a way that the relationship between the model and the parameters are intuitive and real-time.
Simulation with Goodness of Fit by Computer
Turning now to FIG. 2, flow diagram 200 illustrates the prior art of an automated simulation and optimization method using a computer. This flow differs from flow diagram 100 in that this is automated where a computer sets the process parameters in flow 200, the process flow in FIG. 1 is set manually. The flow is entered 202 with the need for a product or process 204. A model with assumed parameters is constructed, however unlike the previous simulation built into this model is a best direction for certain parameters, or a best answer. In an example, simulating fuel economy in an automobile, the best answer would be higher miles per gallon. Once constructed the simulation is performed 208. The results are presented 210, and these results are compared to what is desired 212. As a result of the comparison 214 the computer""s simulation is deemed to be satisfactory and the flow is exited 218. Alternatively the comparison is not considered optimum and the computer simulation optimization method adjusts the model and I or the parameters so as to effect the xe2x80x9cgoodness of fitxe2x80x9d 216 (i.e. how close the simulation worked) and a new simulation is performed 206 until the iterative simulation xe2x80x9chomes in onxe2x80x9d or xe2x80x9czeros in onxe2x80x9d an optimum result.
This automated optimization method although useful has several shortcomings. One shortcoming is the skill required to program intelligence into the model is very high. The simulation must take into account all sorts of parameters, and know the parameters how the parameters effect the results. This approach is unsuccessful for many applications, since it is often difficult to define a proper xe2x80x9cgoodness-of-fitxe2x80x9d parameter. Commonly this technique results in a computer emphasizing an unimportant region of the data that any skilled user would neglect. Typically there are trade-offs. Skilled users apply different xe2x80x9cwhat ifxe2x80x9d scenarios to help further define a xe2x80x9cgoodness-of-fitxe2x80x9d parameter. Returning to the simulating fuel economy, another parameter for simulating fuel economy may be the type of tire. Knowing when to stop trying is also a problem, as the price computer""s simulation time can be high. Computers can also spend significant time trying to optimize a certain parameter when other parameters or parameter interaction will yield unintended results. For example, the color of the car should not matter in simulating fuel economy. Accordingly a need exists for an expert simulation technique that is based on the knowledge and experience of one skilled in the art of the product or process being simulated, without the need for skill in modeling and simulation techniques.
Briefly, according to the present invention, disclosed is a method, a system and computer readable medium for real-time simulation and user interface to enable real-time comparison to known good data as the model is changed for scientific and engineering solutions. Thus, the user is able to evaluate the aptness of the model in simulating the results.
This package includes two, tightly coupled programs. The first is called InSpec, which serves as the simulation engine. The engine reads the model parameters, generates a simulated result, and displays the simulation superimposed on the data. In order to provide visually satisfying results, the engine must operate quickly, generating a new simulation in less than a fraction of a second. A second program according to the present invention, called Layer, serves as the GUI. Layer provides a means for manipulating the model, transmitting it to the engine, and signaling the engine when to evaluate the model. In one embodiment, Layer has been used to evaluate ion backscattering experiments. In this embodiment, Layer enables the user to control the ion beam and detector parameters, as well as the sample structure including the number of layers, layer compositions and thickness.